SHORT VIDEO INTRODUCTION

Professor

Chad (Dr. Chungil Chae)

  • Chad (Chungil Chae)
  • CBPM B223 | cchae@kean.edu
  • Assistant Professor at CBPM, WKU since 2020 Fall
  • Call ma Chad, but in formal situation and space, Dr.Chae or Prof.Chae
  • Teaching business analytics major courses
    • MGS 3001: Python for Business
    • MGS 3101: Foundation of Business Analytics
    • MGS 3701: Data Mining
    • MGS 4701: Application of Business Analytics

Teaching Assistant

  • **** ()
  • wku.edu.cn
  • major in **

Chapter 1:

This chapter begins by giving a very concrete and easy-to-understand explanation of how computers work, how data is stored and manipulated, and why we write programs in high-level languages. An introduction to Python, interactive mode, script mode, and the IDLE environment are also given.

Chapter 2:

This chapter introduces the program development cycle, variables, data types, and simple programs that are written as sequence structures. The student learns to write simple programs that read input from the keyboard, perform mathematical operations, and produce formatted screen output. Pseudocode and flowcharts are also introduced as tools for designing programs. The chapter also includes an optional introduction to the turtle graphics library.

Chapter 3:

In this chapter, the student learns about relational operators and Boolean expressions and is shown how to control the flow of a program with decision structures. The if, if-else, and if-elif-else statements are covered. Nested decision structures and logical operators are discussed as well. The chapter also includes an optional turtle graphics section, with a discussion of how to use decision structures to test the state of the turtle.

Chapter 4:

This chapter shows the student how to create repetition structures using the while loop and for loop. Counters, accumulators, running totals, and sentinels are discussed, as well as techniques for writing input validation loops. The chapter also includes an optional section on using loops to draw designs with the turtle graphics library.

Chapter 5:

In this chapter, the student first learns how to write and call void functions. The chapter shows the benefits of using functions to modularize programs and discusses the top-down design approach. Then, the student learns to pass arguments to functions. Common library functions, such as those for generating random numbers, are discussed. After learning how to call library functions and use their return value, the student learns to define and call his or her own functions. Then the student learns how to use modules to organize functions. An optional section includes a discussion of modularizing turtle graphics code with functions.

Chapter 6:

This chapter introduces sequential file input and output. The student learns to read and write large sets of data and store data as fields and records. The chapter concludes by discussing exceptions and shows the student how to write exception-handling code.

Chapter 7:

This chapter introduces the student to the concept of a sequence in Python and explores the use of two common Python sequences: lists and tuples. The student learns to use lists for arraylike operations, such as storing objects in a list, iterating over a list, searching for items in a list, and calculating the sum and average of items in a list. The chapter discusses list comprehension expressions, slicing, and many of the list methods. One- and two-dimensional lists are covered. The chapter also includes a discussion of the matplotlib package, and how to use it to plot charts and graphs from lists.

Chapter 8:

In this chapter, the student learns to process strings at a detailed level. String slicing and algorithms that step through the individual characters in a string are discussed, and several built-in functions and string methods for character and text processing are introduced. This chapter also includes examples of string tokenizing and parsing CSV files.

Chapter 9:

This chapter introduces the dictionary and set data structures. The student learns to store data as key-value pairs in dictionaries, search for values, change existing values, add new key-value pairs, delete key-value pairs, and write dictionary comprehensions. The student learns to store values as unique elements in sets and perform common set operations such as union, intersection, difference, and symmetric difference. Set comprehensions are also introduced. The chapter concludes with a discussion of object serialization and introduces the student to the Python pickle module.

Chapter 10:

This chapter compares procedural and object-oriented programming practices. It covers the fundamental concepts of classes and objects. Attributes, methods, encapsulation and data hiding, init functions (which are similar to constructors), accessors, and mutators are discussed. The student learns how to model classes with UML and how to find the classes in a particular problem.

Chapter 11:

The study of classes continues in this chapter with the subjects of inheritance and polymorphism. The topics covered include superclasses, subclasses, how __init__functions work in inheritance, method overriding, and polymorphism.

Chapter 12:

This chapter discusses recursion and its use in problem solving. A visual trace of recursive calls is provided, and recursive applications are discussed. Recursive algorithms for many tasks are presented, such as finding factorials, finding a greatest common denominator (GCD), and summing a range of values in a list, and the classic Towers of Hanoi example are presented.

Chapter 13:

This chapter discusses the basic aspects of designing a GUI application using the tkinter module in Python. Fundamental widgets, such as labels, buttons, entry fields, radio buttons, check buttons, list boxes, and dialog boxes, are covered. The student also learns how events work in a GUI application and how to write callback functions to handle events. The Chapter includes a discussion of the Canvas widget, and how to use it to draw lines, rectangles, ovals, arcs, polygons, and text.

Chapter 14:

This chapter introduces the student to database programming. The chapter first introduces the basic concepts of databases, such as tables, rows, and primary keys. Then the student learns to use SQLite to connect to a database in Python. SQL is introduced and the student learns to execute queries and statements that search for rows, add new rows, update existing rows, and delete rows. CRUD applications are demonstrated, and the chapter concludes with a discussion of relational data.

Class Information

  • MGS 3001 W01/W02: Python Programming for Business
  • W01 Class time: T, TH 5:30 pm - 6:45 pm
  • W01 Class room: CBPM C226
  • W02 Class time: T, TH 7:00 pm - 8:15 pm
  • W02 Class room: CBPM C226

Textbook and Resource

  • Main textbook(Gaddis, 2021)
    • Gaddis, T. (2021). Introduction to research methods: A hands-on approach (Fifth). Pearson Education, Inc.
  • Sub textbook
    • AI-Assisted Programming: Better Planning, Coding, Testing, and Deployment (Taulli, 2024)
    • Practical Statistics for Data Scientists50+ Essential Concepts Using R and Python (Bruce, Bruce, & Gedeck, 2020)

In CLass

  • You are expected to read chapter and course material before class
  • Based on your class participation, you will get extra score
  • Computer and other digital device is allowed ONLY students uses it for class related purpose.
  • In case instuctor find unauthorized useage of digital device, you will be asked to leave class.

Attendence and Absent

  • DON”T SENT ME EMAIL or ANY MESSAGE about YOUR ABSENT in ADVANCE
  • More than three times of absents automatically will be marked as F
  • Attendence will be managed in student performance application
  • When instructor or TA check your attendence and if you are not in class, no matter what reason, your attendence will be marked as absent.
  • However, if you have proper and official evidence that WKU allow for absent, bring it to your instructor for revise your absent mark to attendece.

Integration

  • Plagiarism is not tolerated
    • Right after find plagiarism, it will be reported to Office of Vice Chancellor for Academic Affairs directly
    • Student will be kicked out from class immediately
    • Read Academic Integrity Policy

Generative AI Use

Students are permitted to use AI tools, including, but not limited to, ChatGhT, in this course to generate ideas and brainstorm.

  • Think of generative AI as an always-available brainstorming partner. However, you should note that the material generated by these programs may be inaccurate, incomplete, or otherwise problematic. Beware that use may also stifle your independent thinking and creativity.
  • Academic work involves developing essential skills such as critical thinking, problem-solving, and effective communication, which cannot be fully developed by relying solely on Artificial Intelligence (AI).
  • Your independent research, reading, writing, and discussions with peers and instructors are crucial components of academic work that bring unique value and should not be overlooked or replaced by technology.
  • Students should never submit Al-generated work as their original work, as this would constitute a plagiarism violation as defined by the University Academic Integrity Policy and subject to appropriate sanctions.
  • The inclusion of Al generated material must always be cited appropriately, like any other reference material.
  • Using an Al tool to generate content without proper attribution qualifies as academic dishonesty. Additionally, be aware that information derived from these tools is often incomplete or inaccurate. How to cite ChatGPT - American Psychological Association
  • Any assignment found to have been plagiarized or to have used unauthorized Al tools may receive a zero and/or be reported. This underscores the serious consequences of misusing Al tools and the importance of using them responsibly.
  • Any use of generative Al-programs such as ChatGPT, GPT 4, DALL-E, Vertex, and many others to come—is subject to the same citation rules as ideas, text, speech, or imagery derived from human authors.
  • Any student who is unsure of expectations regarding generative Al tools is encouraged to ask their instructor for clarification.
  • This course only accepts 0-10% AI-generated writing in any assignment submission. Any student who submits an assignment with more than 10% AI-generated writing will be asked to revise the work. Failure to make the necessary revisions will result in a no grade failure on those assignments.

Reference

Bruce, P., Bruce, A., & Gedeck, P. (2020). Practical statistics for data scientists: 50+ essential concepts using r and python. O’Reilly Media.
Gaddis, T. (2021). Introduction to research methods: A hands-on approach (Fifth). Pearson Education, Inc.
Taulli, T. (2024). AI-assisted programming: Better planning, coding, testing, and deployment. " O’Reilly Media, Inc.".